package com.ruoyi.common.utils.bean;

import java.util.List;

import com.github.pagehelper.Page;

public abstract class PageCopier {
    
    public static <P,V> Page<V> clone(List<P> page, Class<V> v) {
    	return clone((Page<P>)page, v);
    }
    
    public static <P,V> Page<V> clone(Page<P> page, Class<V> v) {
        // 创建Page对象，实际上是一个ArrayList类型的集合
        if (page != null) {
        	Page<V> pageVO = new Page<>(page.getPageNum(), page.getPageSize());
            pageVO.setTotal(page.getTotal());
            List<P> records = page.getResult();
            for (P record : records) {
                if(record!=null){
                	V newV = BeanCopier.copyProperties(record, v);
                    pageVO.add(newV);
                }
            }
            pageVO.setTotal(page.getTotal());
            return pageVO;
        } else {
        	return null;
        }
    }

}
